from typing import Any

from .objcreator import QObjectCreator as QObjectCreator
from .properties import Properties as Properties
from .ui_file import UIFile as UIFile

logger: Any
DEBUG: Any
QtCore: Any
QtGui: Any
QtWidgets: Any

class WidgetStack(list):
    topwidget: Any
    def push(self, item) -> None: ...
    def popLayout(self): ...
    def popWidget(self): ...
    def peek(self): ...
    def topIsLayout(self): ...
    def topIsLayoutWidget(self): ...

class ButtonGroup:
    exclusive: bool
    object: Any
    def __init__(self) -> None: ...

class UIParser:
    factory: Any
    wprops: Any
    def __init__(self, qtcore_module, qtgui_module, qtwidgets_module, creatorPolicy) -> None: ...
    def uniqueName(self, name): ...
    toplevelWidget: Any
    stack: Any
    name_suffixes: Any
    defaults: Any
    actions: Any
    currentActionGroup: Any
    button_groups: Any
    def reset(self) -> None: ...
    def setupObject(self, clsname, parent, branch, is_attribute: bool = ...): ...
    def getProperty(self, elem, name): ...
    column_counter: int
    row_counter: int
    item_nr: int
    itemstack: Any
    sorting_enabled: Any
    def createWidget(self, elem) -> None: ...
    def handleHeaderView(self, elem, name, header) -> None: ...
    def createSpacer(self, elem) -> None: ...
    def createLayout(self, elem) -> None: ...
    def configureLayout(self, elem, layout) -> None: ...
    def setArray(self, elem, name, setter) -> None: ...
    def disableSorting(self, w) -> None: ...
    def handleItem(self, elem) -> None: ...
    def addAction(self, elem) -> None: ...
    @staticmethod
    def any_i18n(*args): ...
    def createWidgetItem(self, item_type, elem, getter, *getter_args): ...
    def addHeader(self, elem) -> None: ...
    def setZOrder(self, elem) -> None: ...
    def createAction(self, elem) -> None: ...
    def createActionGroup(self, elem) -> None: ...
    widgetTreeItemHandlers: Any
    def traverseWidgetTree(self, elem) -> None: ...
    def addActions(self) -> None: ...
    def setDelayedProps(self) -> None: ...
    def setBuddies(self) -> None: ...
    def setContext(self, context) -> None: ...
    def createToplevelWidget(self, classname, widgetname) -> None: ...
    def finalize(self) -> None: ...
    uiname: Any
    def parse(self, filename): ...
